"use strict";
// 使数据类型灵活， 而非局限于某一种类型
// 泛型函数
// function hello (arg: number): number {
//   return arg
// }
// function hello (arg: string): string {
//   return arg
// }
// function hello(arg: any): any {
//   return arg
// }
// 声明一个泛型函数hello 传什么就返回什么，传字符串就返回字符串，传数字就返回数字，传123就返回123
function hello(arg) {
    return arg;
}
// 调用方式一：尖括号
var output1 = hello('123');
console.log(output1); // '123'
var output2 = hello(123);
console.log(output2); // 123
// 调用方式二：类型推断
var output3 = hello('123');
console.log(output3); // '123'
var output4 = hello(123);
console.log(output4); // 123
// 泛型数组的使用
function fn1(arg) {
    console.log(arg[0], arg.length); // '1234' 2
    return arg;
}
var output5 = fn1(['1234', 'abc']);
function fn2(arg) {
    var str = arg[0];
    console.log(str.split('')); // ["1", "2", "3", "4"]
    return arg;
}
var output6 = fn2(['1234', '5678']);
